package com.it.mapper;

import java.util.*;
import org.apache.ibatis.annotations.Param;
import com.it.model.News;

/**
 * @author dell
 *page-99
 *5.6 Mapper 动态代理
什么是Mapper动态代理?一般创建 Web工程时，从数据库取数据的逻辑会放置在DAO层(Date Access Object,数据访问对象)。
使用MyBatis开发Web工程时，通过Mapper动态代理机制，可以只编写数据交互的接口及方法定义，和对应的Mapper映射文件，具体的交互方法实现由MyBatis来完成。
这样大大节省了开发DAO层的时间。
实现Mapper代理的方法并不难，只需要遵循一定的开发规范即可。
即新建一个 interface接口，接口名称保持与某个mapper.xml配置文件相同，
接口中方法定义的方法名和方法参数，以及方法返回类型，都与mapper.xml 配置文件中的SQL映射的id及输入输出映射类型相同，
而mapper的namespace指定interface 接口的路径，此时就可以使用SqlSession类获取Mapper代理(即一个interface接口类型的对象)来执行SQL映射配置。
小贴士:使用Mapper代理可以省去DAO层的实现类，从而提升开发效率。
 */
public interface NewsMapper {

	public void insertObject(News news);

	public void deleteObject(int id);

	public void updateObject(News news);

	public News selectObject(int id);

	public List<News> getObjectList(@Param("field") String field,
			@Param("fieldValue") String fieldValue);

}
